jmp near start
message db '1+2+3+...+100='

start:
	mov ax, 0x07c0
	mov ds, ax
	mov ax, 0xb800
	mov es, ax
	
	mov cx, start-message

	mov si, message
	xor di, di
msg:
	mov al, [si]
	mov ah, 0x07
	mov [es:di], ax
	inc si
	add di,2
	loop msg

	mov cx, 100
	xor ax, ax
	mov bx, 1
sum:
	add ax, bx
	inc bx
	loop sum

	xor cx, cx
	mov ss, cx
	mov sp, cx
	mov si, 10
divide:
	xor dx, dx
	div si
	push dx
	inc cx
	cmp ax, 0
	jne divide

	
show:
	pop ax
	mov ah, 0x07
	add al, 0x30
	mov [es:di], ax
	add di, 2
	loop show
	

	jmp $ 

times 510-($-$$) db 0
db 0x55, 0xaa
